package cn.demoncat.util.weixinwork.constant;

/**
 * 企业微信常量
 *
 * @author 延晓磊
 * @since 2023年03月29日
 */
public interface WeixinWorkConstant {

    /**
     * 企业微信服务端地址
     */
    String SERVER = "https://qyapi.weixin.qq.com/cgi-bin";

    /**
     * 接口
     */
    enum Api {
        ACCESS_TOKEN(SERVER + "/gettoken", "获取access_token"),
        CREATE_PROCESS_FORM(SERVER + "/oa/approval/create_template", "创建审批模板"),
        UPDATE_PROCESS_FORM(SERVER + "/oa/approval/update_template", "修改审批模板"),
        START_PROCESS_INSTANCE(SERVER + "/oa/applyevent", "发起审批"),
        GET_PROCESS_INSTANCE(SERVER + "/oa/getapprovaldetail", "查看审批")

        ;


        // 地址
        private final String url;
        // 名称
        private final String name;

        Api(String url, String name) {
            this.url = url;
            this.name = name;
        }
        public String getUrl() {
            return url;
        }
        public String getName() {
            return name;
        }
    }

    /**
     * 状态码
     */
    interface Code{

        String SUCCESS = "0";
        String ACCESS_TOKEN_EXPIRE = "42001";
    }

    /**
     * 表单控件类型
     *
     * 全部：Text 文本，Textarea 多行文本，Number 数字，Money 金额，Date 日期，Selector 选择框，Contact 成员/部门，Tips 说明文字，File 附件，Table 明细，Location 位置，PhoneNumber 电话号码
     * 支持：Text 文本，Textarea 多行文本，Number 数字，Money 金额
     */
    interface FormControl{

        String Text = "Text";
        String Textarea = "Textarea";
        String Number = "Number";
        String Money = "Money";
    }
}
